1. Technical Field
The present invention relates generally to the retrieval of data from a storage medium and more particularly to a system and method for enabling synchronization of a clock to read data from the medium when the primary synchronization byte has been corrupted.
2. Description of the Background Art
Magnetic disk drives utilized for the storage of information are well-known. Data is stored in the form of magnetic transitions created on the surfaces of one or more magnetically coated storage disks stacked on a rotatable spindle motor assembly. The data is organized into a plurality of annular rings or tracks, and each group of tracks having a same location on the disks is referred to as a cylinder. Data tracks are further subdivided into one or more blocks or sectors of data. The actual format of a data track depends upon the particular design of the disk drive system. Regardless of format, the electronics controlling the storage and retrieval operations of a disk drive must have the means to precisely and reliably determine the start of user data in each data sector so that data may be accurately reproduced.
Data is retrieved or xe2x80x9creadxe2x80x9d from a disk surface with a magnetic transducer or read xe2x80x9cheadxe2x80x9d which is positioned in close proximity to the rotating disk for sensing the magnetic transitions and converting them into an electrical signal. For high track densities, magnetoresistive (MR) read heads are desirable because of their high degree of sensitivity. Each head is electrically coupled to arm electronics (AE) including a preamplifier, which in turn is coupled to a data channel preferably of the PRML type. The PRML channel includes, among other things, an automatic gain control circuit (AGC), a variable frequency oscillator (VFO) circuit, and sync byte detection circuitry. Descriptions of PRML channels are provided in commonly assigned U.S. Pat. Nos. 5,220,466 and 5,255,131.
The heads are mounted to a linear or rotary actuator assembly for selective positioning of the heads over desired tracks. Movement of the actuator assembly is controlled by the servo electronics and servo microcode, which regulate a control signal to a voice coil motor. Closed loop servo systems utilize feedback information from the disk to find and maintain a position over a target track. This feedback information may be located on a single, dedicated disk surface (i.e., dedicated servo) or embedded on data tracks between portions of data (embedded servo). Numerous servo systems are known in the art for providing a disk drive with the means for seeking to a desired track and following the track during reading or writing. Embedded servo disk drives are described, for example, in U.S. Pat. Nos. 5,285,327 and 5,369,535.
Reading and writing of data is accomplished through the data channel under the direct control of a disk controller, which includes a sequencer for executing microcode control sequences. Data to be written to a storage disk is received by the disk drive in binary form. Before writing, the incoming data stream is first encoded and clocked for enhanced readback reliability. Encoding assures that magnetic transitions recorded around a track are spaced sufficiently far apart to prevent interference between adjacent transitions which may corrupt the readback signal. For a more detailed discussion of encoding schemes, the reader is referred to commonly assigned U.S. Pat. Nos. 4,707,681 and 5,461,631. Clocking assures constant spacing of transitions to obtain a desired track bit density and a constant readback signal frequency. Data frequency may be constant from track to track, or may vary, e.g., as in banded recording schemes. See, for example, U.S. Pat. No. 5,440,474. In sector servo systems, data sectors are usually recorded at frequencies and amplitudes different from those of the servo sectors. In addition, some of the data sectors may be xe2x80x9csplitxe2x80x9d by servo fields.
A data track for any of the preceding formats typically comprises xe2x80x9csplicesxe2x80x9d of data. That is, portions of data will be written to the track at different times, and consequently, the frequency of each portion will not be synchronous with other portions on the same track. It is therefore crucial to data retrieval that the disk drive""s read channel can adjust to the proper clock phase of each data splice. Additionally, amplitude may vary among the heads and frequency may vary from band to band. Thus the channel must also be able to adjust to the particular amplitude and frequency of the data splice being read. Finally, it is important to correctly identify the starting location of the first frame of user data in the data splice.
To facilitate the preceding requirements, a preamble is annexed to each data splice at the time of writing. The preamble normally includes a plurality of repeating patterns having the same amplitude, frequency and phase as the data, to be used by the channel in preparation for reading. It also includes an identifier for use in locating a particular data block. Some disk drives employ headerless or ID-less data block formats for enhanced data capacity, i.e., data blocks in which the preamble does not contain identification or xe2x80x9cIDxe2x80x9d information. See, for example, commonly owned U.S. Pat. No. 5,438,559, and application Ser. No. 08/082,826, filed on Jun. 23, 1993 and Ser. No. 08/218,546, filed on Mar. 28, 1994 for a description of disk drives employing a xe2x80x9cNoIDxe2x80x9d (TM) format.
When a read head encounters a desired data splice, it first passes over an amplitude adjustment portion of the preamble, often called the automatic gain control or AGC field. The AGC field contains a repeating pattern for producing a corresponding repetitive electrical signal of the same amplitude as the data to be read. The repeating signal is used by the AGC circuit in the data channel to adjust a variable gain amplifier (VGA) and thereby amplify the read signal to a predetermined normalized level. The AGC field must be long enough to accommodate fluctuations in spindle speed, transients occurring in a write to read switch, and the actual amplitude adjustment operation. Determination of the appropriate length or number of bytes is made by studying the response of a particular disk drive configuration.
The head next passes over a data synchronization or VFO portion of the preamble comprising a repeating pattern that for simplicity is identical to the repeating pattern of the AGC field. The VFO pattern produces a repetitive electrical signal of the same frequency and phase as the data to be read. It is used by the VFO circuit in the data channel for tuning a variable frequency oscillator, e.g., a voltage controlled oscillator (VCO), to match the frequency and phase of the signal. The VFO field must be long enough to accommodate this synchronizing operation.
The VFO field is followed by a pattern or group of adjacent patterns, generally referred to as xe2x80x9csync bytesxe2x80x9d, that mark the beginning of the data field and provide a frame of reference for correctly distinguishing data bytes. Sync bytes are detected by sync byte detection logic in the data channel that looks for one or more predetermined sync byte patterns during a certain window of time. Once the sync byte is identified, the data bytes that follow can be properly decoded.
Portions of the information on a magnetic disk are known to become defective over time for a variety of reasons. Bits, bytes, and even large areas of dropout, e.g., 15-20 bytes in length, occasionally occur and may be the result of phenomena such as contamination or thermal asperities. Data loss is avoided in some cases with error correction that is used to detect errors and reconstruct lost bits or bytes of data. Two examples of error correction code are provided in commonly assigned U.S. Pat. Nos. 4,494,234 and 4,706,250. Despite this protection, disk defects which corrupt the sync byte field are catastrophic to data retrieval. Thus a sync byte detection scheme is required that can tolerate both small and large dropout.
A number of schemes have been implemented to enhance the robustness of sync bytes against small defects in magnetic disk drives. For example, IBM Technical Disclosure Bulletin Vol. ?, June 1986, pp. 151-157 discloses a sync byte pattern and sync byte detection scheme able to correct for one to two bits of error. Some disk drive designs employ three adjacent sync bytes per data block and use a voting scheme to verify the detection of two out of three sync bytes. The sync bytes are written with alternating patterns to distinguish which of the two out of three bytes have been detected. Another fault tolerant scheme, proposed in U.S. Pat. No. 5,420,893, eliminates the use of sync bytes altogether by providing two overlapping control patterns in the preamble having different frequencies which coincide at the start of data. Each of these schemes, however, is susceptible to large dropout.
Resynchronization schemes have been adopted in both magnetic tape and optical disk storage technologies to address the problem of large dropout. For example, the ISO standard for optical disk storage devices provides 3 adjacent sync bytes prior to each block of user data and requires two resynchronization fields to be inserted between each subblock of 15 or 20 bytes of user data, depending upon the number of data bytes in the block. These resynchronization fields are distinguishable from the user data, e.g., they may violate the data encoding convention of the device. See xe2x80x9cInformation Technologyxe2x80x94130 mm Rewritable Optical Disk Cartridges for Information Interchangexe2x80x9d, Draft International Standard, ISO/IEC DIS 10089 (1990).
In the IBM 3850 magnetic tape drive system, data is recorded in slanted stripes across the magnetic tape rather than in multiple, longitudinal tracks along the tape. Each stripe further comprises a sync field and primary sync byte followed by a plurality of data segments. Each segment, in turn, is subdivided into a plurality of data sections, and each data section is both preceded and followed by a unique synchronization signal for resynchronizing a read clock. (See xe2x80x9cError Recovery Scheme for the IBM 3850 Mass Storage Systemxe2x80x9d, by A. Patel, IBM J. Res. Develop., Vol. 24, No. 1, Jan. 1980, pp. 32-42.)
What is needed, however, is some manner of protecting against the corruption of a sync byte or group of adjacent sync bytes in a magnetic disk drive to ensure proper retrieval of user data. More particularly, a redundant sync byte format, detection system, and method are required for providing tolerance of relatively large, multiple bit or byte disk defects to improve the overall reliability of a magnetic disk drive.
Accordingly, the present invention provides a system, method and data format wherein a redundant sync byte or group of sync bytes is provided in a data sector at a distance sufficient to isolate the redundant sync bytes from the primary sync byte(s) in the event of multiple byte defects. In a first embodiment, a redundant sync byte, or group of sync bytes, is provided in the AGC field preceding the primary sync region. A secondary VFO field is also provided for VFO synchronization. The secondary VFO field can be shorter than the primary VFO field, particularly if the data channel supports a xe2x80x9cfast syncxe2x80x9d mode of operation, because numerous attempts to read the secondary byte may be made in an error recovery mode, loosening spindle speed tolerances somewhat. The first embodiment is particularly suitable to high capacity disk drives, since no additional real estate is required in the provision of a secondary sync region.
According to this first embodiment, if a primary sync byte field is unreadable, an error recovery procedure is invoked and the channel attempts a read of the secondary sync bytes on a subsequent revolution. The previously obtained AGC gain is held or reestablished and held on a different data block prior to reaching the target block. Alternatively, an xe2x80x9cearly readxe2x80x9d is initiated just prior to reaching the data block. The data channel then synchronizes to the secondary VFO field and detects the secondary sync byte, then xe2x80x9ccoastsxe2x80x9d over the primary fields for a predetermined delay to the start of data.
In a second embodiment of the present invention, the redundant sync bytes are provided within the data field subsequent to the primary sync region. The data is thus split by the secondary sync bytes into first and second portions, the first portion preferably including only a small number of bytes.
During normal operation, the primary sync byte field is used for synchronization, and the second sync byte field is ignored, e.g., by disabling the sync byte detector when the head passes over this portion of the data field. If the primary sync bytes are missed, an error recovery procedure is invoked to immediately read the secondary sync bytes, and if this attempt is successful, the remainder of the data field. If the data channel is not fast enough to switch to error recovery mode and detect the secondary sync bytes in the same revolution, the procedure is executed on a subsequent revolution. In this latter instance, the channel either attempts to reread the primary sync bytes or ignores them, and resynchronization of the VFO occurs on either the primary or secondary VFO field (if a secondary VFO field is provided, that is). In either case, the missed first portion of the data field is reconstructed from the ECC field. In this second embodiment, the data byte count must be modified to correspond to the second data region for error recovery. This method is particularly suitable to disk drive designs wherein performance is a prime consideration and the channel is able to switch quickly from normal to error recovery mode.
In third and fourth related embodiments, a secondary sync byte field is provided either between the primary sync byte field and the start of data or between the primary sync byte field and AGC field. The formats are analogous to the first and second embodiments, but leave the data and AGC fields intact. Consequently, they are more costly in disk real estate and should only be used in drives where capacity is secondary to reliability of data retrieval. The region between the primary and secondary sync bytes is a repetitive VFO pattern or a pad field, and has a sufficient length to isolate the sync bytes against multiple byte drop out, while maximizing data capacity.
According to the third and fourth embodiments proposed, the primary sync byte field is used for synchronization and the secondary sync byte field is ignored. If the primary sync byte is unreadable, however, an attempt is made to read the secondary sync bytes using one of two procedures analogous to those outlined for the first and second embodiments discussed above.